#!/bin/sh
###############################################################################
# chkconfig:      12345 01 99
###############################################################################
### BEGIN INIT INFO
# Provides:       slurm-cpuset
# Required-Start: $named $time
# Default-Start:  3 4 5
# Default-Stop:   0 1 2 6
# Description:    Mount /dev/cpuset filesystem
### END INIT INFO
###############################################################################


case "$1" in
  start)
    echo -n "Mounting /dev/cpuset filesystem: "
    mkdir -m 0755 -p /dev/cpuset
    mount -t cpuset none /dev/cpuset 
    if [ $? -ne 0 ]; then
       echo "Failed"
       exit 1
    fi

    #  Spread slab allocations over all memory nodes
    echo 1 > /dev/cpuset/memory_spread_slab
    echo "Success"
    ;;
   
  stop)
    #  Do nothing
    exit 0; 
    ;;

  status)
    echo -n "cpuset filesystem is "
    [ -f /dev/cpuset/cpus ] || echo -n "not "
    echo -n "mounted."
    ;;

  *)
    echo "Usage: $0 start|status"
    exit 1
    ;;
esac

exit 0
